﻿#region summary

// Copyright (c)  MOKEYISH. All rights reserved.
// Licensed under the MIT License, See License.txt in the project root for license information.

#endregion

using System.Diagnostics;

namespace NSQL.Expressions
{
    [DebuggerDisplay("{ToString()}")]
    public class BetweenExpression : BaseExpression, IBetweenExpression
    {
        public IExpression LeftExpression { get; set; }
        public INumericExpression BeginExpression { get; set; }
        public INumericExpression EndExpression { get; set; }

        public BetweenExpression()
        {
        }

        public BetweenExpression(IExpression leftExpression, INumericExpression beginExpression,
            INumericExpression endExpression)
        {
            LeftExpression = leftExpression;
            BeginExpression = beginExpression;
            EndExpression = endExpression;
        }

        public override T Accept<T>(IExpressionVisitor<T> visitor) => visitor.Visit(this);
    }
}